Input object classification

ABSTRACT

A processing system for an input device includes a sensor module and a determination module. The sensor module includes sensor circuitry coupled to transmitter electrodes and receiver electrodes. The sensor module is configured to transmit transmitter signals with the transmitter electrode and receive resulting signals with the receiver electrodes. The determination module is configured to obtain a set of measurements for an input object detected in a sensing region of the input device from a capacitive image, and perform, based on the set of measurements, a multistage classification to obtain a classification result identifying a type of the input object. wherein the capacitive image is generated based on the resulting signals.

FIELD OF THE INVENTION

The invention generally relates to electronic devices.

BACKGROUND

Input devices including proximity sensor devices (also commonly calledtouchpads or touch sensor devices) are widely used in a variety ofelectronic systems. A proximity sensor device typically includes asensing region, often demarked by a surface, in which the proximitysensor device determines the presence, location and/or motion of one ormore input objects. Proximity sensor devices may be used to provideinterfaces for the electronic system. For example, proximity sensordevices are often used as input devices for larger computing systems(such as opaque touchpads integrated in, or peripheral to, notebook ordesktop computers). Proximity sensor devices are also often used insmaller computing systems (such as touch screens integrated in cellularphones).

SUMMARY

In general, in one aspect, embodiments relate to a processing system foran input device. The processing system includes a sensor module and adetermination module. The sensor module includes sensor circuitrycoupled to transmitter electrodes and receiver electrodes. The sensormodule is configured to transmit transmitter signals with thetransmitter electrode and receive resulting signals with the receiverelectrodes. The determination module is configured to obtain a set ofmeasurements for an input object detected in a sensing region of theinput device from a capacitive image, and perform, based on the set ofmeasurements, a multistage classification to obtain a classificationresult identifying a type of the input object. wherein the capacitiveimage is generated based on the resulting signals.

In general, in one aspect, embodiments relate to a method forclassifying a type of input object. The method includes obtaining a setof measurements for an input object detected in a sensing region of theinput device from a capacitive image. The capacitive image is generatedbased on resulting signals obtained by a sensor module. The methodfurther includes performing, based on the set of measurements, amultistage classification to obtain a classification result identifyinga type of the input object.

In general, in one aspect, embodiments relate to an input device thatincludes transmitter electrodes, receiver electrodes, and a processingsystem. The transmitter electrodes are configured to transmittransmitter signals. The receiver electrodes are configured to receiveresulting signals from the plurality of transmitter signals. Theprocessing system is configured to obtain a set of measurements for aninput object detected in a sensing region of the input device from acapacitive image, and perform, based on the set of measurements, amultistage classification to obtain a classification result identifyinga type of the input object. The capacitive image is generated based onthe resulting signals.

Other aspects of the invention will be apparent from the followingdescription and the appended claims.

BRIEF DESCRIPTION OF DRAWINGS

The preferred exemplary embodiment of the present invention willhereinafter be described in conjunction with the appended drawings,where like designations denote like elements, and

FIG. 1 is a block diagram of an exemplary system that includes an inputobject in accordance with one or more embodiments of the invention.

FIG. 2A is a block diagram of an exemplary system that includes adetermination module in accordance with one or more embodiments of theinvention.

FIG. 2B shows an example diagram of a capacitive image in accordancewith one or more embodiments of the invention.

FIGS. 3A, 3B, 3C, 4, and 5 show flowcharts in accordance with one ormore embodiments of the invention.

DETAILED DESCRIPTION

The following detailed description is merely exemplary in nature and isnot intended to limit the invention or the application and uses of theinvention. Furthermore, there is no intention to be bound by anyexpressed or implied theory presented in the preceding technical field,background, brief summary or the following detailed description.

In the following detailed description of embodiments of the invention,numerous specific details are set forth in order to provide a morethorough understanding of the invention. However, it will be apparent toone of ordinary skill in the art that the invention may be practicedwithout these specific details. In other instances, well-known featureshave not been described in detail to avoid unnecessarily complicatingthe description.

Various embodiments of the present invention provide input devices andmethods that facilitate improved usability. In general, one or moreembodiments of the invention provide a method and apparatus fordetermining a type of an input object. Specifically, one or moreembodiments of the invention obtain a set of measurements for the inputobject detected in a sensing region of an input device from a capacitiveimage, and perform a multistage classification based on the set ofmeasurements.

Turning now to the figures, FIG. 1 is a block diagram of an exemplaryinput device (100), in accordance with embodiments of the invention. Theinput device (100) may be configured to provide input to an electronicsystem (not shown). As used in this document, the term “electronicsystem” (or “electronic device”) broadly refers to any system capable ofelectronically processing information. Some non-limiting examples ofelectronic systems include personal computers of all sizes and shapes,such as desktop computers, laptop computers, netbook computers, tablets,web browsers, e-book readers, and personal digital assistants (PDAs).Additional example electronic systems include composite input devices,such as physical keyboards that include input device 100 and separatejoysticks or key switches. Further example electronic systems includeperipherals such as data input devices (including remote controls andmice), and data output devices (including display screens and printers).Other examples include remote terminals, kiosks, and video game machines(e.g., video game consoles, portable gaming devices, and the like).Other examples include communication devices (including cellular phones,such as smart phones), and media devices (including recorders, editors,and players such as televisions, set-top boxes, music players, digitalphoto frames, and digital cameras). Additionally, the electronic systemcould be a host or a slave to the input device.

The input device (100) may be implemented as a physical part of theelectronic system, or may be physically separate from the electronicsystem. As appropriate, the input device (100) may communicate withparts of the electronic system using any one or more of the following:buses, networks, and other wired or wireless interconnections. Examplesinclude I2C, SPI, PS/2, Universal Serial Bus (USB), Bluetooth, RF, andIRDA.

In FIG. 1, the input device (100) is shown as a proximity sensor device(also often referred to as a “touchpad”, “touch screen”, or a “touchsensor device”) configured to sense input provided by one or more inputobjects (140) in a sensing region (120). Example input objects includepointer instruments, fingers, palms, hovering palms, and other objectsthat may be in the sensing region. A pointer instrument is a hardwaredevice for interacting with the input device. For example, the pointerinstrument may be a pen, a stylus, or other such device.

Sensing region (120) encompasses any space above, around, in and/or nearthe input device (100) in which the input device (100) is able to detectuser input (e.g., user input provided by one or more input objects(140)). The sizes, shapes, and locations of particular sensing regionsmay vary widely from embodiment to embodiment. In some embodiments, thesensing region (120) extends from a surface of the input device (100) inone or more directions into space until signal-to-noise ratios preventsufficiently accurate object detection. The distance to which thissensing region (120) extends in a particular direction, in variousembodiments, may be on the order of less than a millimeter, millimeters,centimeters, or more, and may vary significantly with the type ofsensing technology used and the accuracy desired. Thus, some embodimentssense input that includes no contact with any surfaces of the inputdevice (100), contact with an input surface (e.g. a touch surface) ofthe input device (100), contact with an input surface of the inputdevice (100) coupled with some amount of applied force or pressure,and/or a combination thereof. In various embodiments, input surfaces maybe provided by surfaces of casings within which the sensor electrodesreside, by face sheets applied over the sensor electrodes or anycasings, etc. In some embodiments, the sensing region (120) has arectangular shape when projected onto an input surface of the inputdevice (100).

The input device (100) may utilize any combination of sensor componentsand sensing technologies to detect user input in the sensing region(120). The input device (100) includes one or more sensing elements fordetecting user input. As several non-limiting examples, the input device(100) may use capacitive, elastive, resistive, inductive, magnetic,acoustic, ultrasonic, and/or optical techniques.

Some implementations are configured to provide images that span one,two, three, or higher dimensional spaces. Some implementations areconfigured to provide projections of input along particular axes orplanes.

In some resistive implementations of the input device (100), a flexibleand conductive first layer is separated by one or more spacer elementsfrom a conductive second layer. During operation, one or more voltagegradients are created across the layers. Pressing the flexible firstlayer may deflect it sufficiently to create electrical contact betweenthe layers, resulting in voltage outputs reflective of the point(s) ofcontact between the layers. These voltage outputs may be used todetermine positional information.

In some inductive implementations of the input device (100), one or moresensing elements pick up loop currents induced by a resonating coil orpair of coils. Some combination of the magnitude, phase, and frequencyof the currents may then be used to determine positional information.

In some capacitive implementations of the input device (100), voltage orcurrent is applied to create an electric field. Nearby input objectscause changes in the electric field, and produce detectable changes incapacitive coupling that may be detected as changes in voltage, current,or the like.

Some capacitive implementations utilize arrays or other regular orirregular patterns of capacitive sensing elements to create electricfields. In some capacitive implementations, separate sensing elementsmay be ohmically shorted together to form larger sensor electrodes. Somecapacitive implementations utilize resistive sheets, which may beuniformly resistive.

Some capacitive implementations utilize “self capacitance” (or “absolutecapacitance”) sensing methods based on changes in the capacitivecoupling between sensor electrodes and an input object. In variousembodiments, an input object near the sensor electrodes alters theelectric field near the sensor electrodes, thus changing the measuredcapacitive coupling. In one implementation, an absolute capacitancesensing method operates by modulating sensor electrodes with respect toa reference voltage (e.g. system ground), and by detecting thecapacitive coupling between the sensor electrodes and input objects.

Some capacitive implementations utilize “mutual capacitance” (or“transcapacitance”) sensing methods based on changes in the capacitivecoupling between sensor electrodes. In various embodiments, an inputobject near the sensor electrodes alters the electric field between thesensor electrodes, thus changing the measured capacitive coupling. Inone implementation, a transcapacitive sensing method operates bydetecting the capacitive coupling between one or more transmitter sensorelectrodes (also “transmitter electrodes”) and one or more receiversensor electrodes (also “receiver electrodes”). Transmitter sensorelectrodes may be modulated relative to a reference voltage (e.g.,system ground) to transmit transmitter signals. Receiver sensorelectrodes may be held substantially constant relative to the referencevoltage to facilitate receipt of resulting signals. A resulting signalmay include effect(s) corresponding to one or more transmitter signals,and/or to one or more sources of environmental interference (e.g. otherelectromagnetic signals). Sensor electrodes may be dedicatedtransmitters or receivers, or may be configured to both transmit andreceive.

Some optical techniques utilize optical sensing elements (e.g., opticaltransmitters and optical receivers). Such optical transmitters transmitoptical transmitter signals. The optical receivers include functionalityto receive resulting signals from the optical transmitter signals. Aresulting signal may include effect(s) corresponding to one or moretransmitter signals, one or more input objects (140) in the sensingregion, and/or to one or more sources of environmental interference. Forexample, the optical transmitters may correspond to a light emittingdiode (LED), organic LED (OLED), light bulb, or other opticaltransmitting component. In one or more embodiments, the opticaltransmitter signals are transmitted on the infrared spectrum.

In FIG. 1, a processing system (110) is shown as part of the inputdevice (100). The processing system (110) is configured to operate thehardware of the input device (100) to detect input in the sensing region(120). The processing system (110) includes parts of or all of one ormore integrated circuits (ICs) and/or other circuitry components. Forexample, a processing system for a mutual capacitance sensor device mayinclude transmitter circuitry configured to transmit signals withtransmitter sensor electrodes, and/or receiver circuitry configured toreceive signals with receiver sensor electrodes). In some embodiments,the processing system (110) also includes electronically-readableinstructions, such as firmware code, software code, and/or the like. Insome embodiments, components composing the processing system (110) arelocated together, such as near sensing element(s) of the input device(100). In other embodiments, components of processing system (110) arephysically separate with one or more components close to sensingelement(s) of input device (100), and one or more components elsewhere.For example, the input device (100) may be a peripheral coupled to adesktop computer, and the processing system (110) may include softwareconfigured to run on a central processing unit of the desktop computerand one or more ICs (perhaps with associated firmware) separate from thecentral processing unit. As another example, the input device (100) maybe physically integrated in a phone, and the processing system (110) mayinclude circuits and firmware that are part of a main processor of thephone. In some embodiments, the processing system (110) is dedicated toimplementing the input device 100. In other embodiments, the processingsystem (110) also performs other functions, such as operating displayscreens, driving haptic actuators, etc.

The processing system (110) may be implemented as a set of modules thathandle different functions of the processing system (110). Each modulemay include circuitry that is a part of the processing system (110),firmware, software, or a combination thereof. In various embodiments,different combinations of modules may be used. For example, as shown inFIG. 1, the processing system (110) may include a determination module(150) and a sensor module (160). The determination module (150) mayinclude functionality to determine when at least one input object is ina sensing region, determine signal to noise ratio, determine positionalinformation of an input object, determine a type of input object,perform other determinations, or a combination thereof.

The sensor module (160) may include functionality to drive the sensingelements to transmit transmitter signals and receive resulting signals.For example, the sensor module (160) may include sensory circuitry thatis coupled to the sensing elements. The sensor module (160) may include,for example, a transmitter module and a receiver module. The transmittermodule may include transmitter circuitry that is coupled to atransmitting portion of the sensing elements. The receiver module mayinclude receiver circuitry coupled to a receiving portion of the sensingelements and may include functionality to receive the resulting signals.

Although FIG. 1 shows only a determination module (150) and a sensormodule (160), alternative or additional modules may exist in accordancewith one or more embodiments of the invention. Such alternative oradditional modules may correspond to distinct modules or sub-modulesthan one or more of the modules discussed above. Example alternative oradditional modules include hardware operation modules for operatinghardware such as sensor electrodes and display screens, data processingmodules for processing data such as sensor signals and positionalinformation, reporting modules for reporting information, andidentification modules configured to identify gestures such as modechanging gestures, and mode changing modules for changing operationmodes.

In some embodiments, the processing system (110) responds to user input(or lack of user input) in the sensing region (120) directly by causingone or more actions. Example actions include changing operation modes,as well as GUI actions such as cursor movement, selection, menunavigation, and other functions. In some embodiments, the processingsystem (110) provides information about the input (or lack of input) tosome part of the electronic system (e.g. to a central processing systemof the electronic system that is separate from the processing system(110), if such a separate central processing system exists). In someembodiments, some part of the electronic system processes informationreceived from the processing system (110) to act on user input, such asto facilitate a full range of actions, including mode changing actionsand GUI actions.

For example, in some embodiments, the processing system (110) operatesthe sensing element(s) of the input device (100) to produce electricalsignals indicative of input (or lack of input) in the sensing region(120). The processing system (110) may perform any appropriate amount ofprocessing on the electrical signals in producing the informationprovided to the electronic system. For example, the processing system(110) may digitize analog electrical signals obtained from the sensorelectrodes. As another example, the processing system (110) may performfiltering or other signal conditioning. As yet another example, theprocessing system (110) may subtract or otherwise account for abaseline, such that the information reflects a difference between theelectrical signals and the baseline. As yet further examples, theprocessing system (110) may determine positional information, recognizeinputs as commands, recognize handwriting, and the like.

“Positional information” as used herein broadly encompasses absoluteposition, relative position, velocity, acceleration, and other types ofspatial information. Exemplary “zero-dimensional” positional informationincludes near/far or contact/no contact information. Exemplary“one-dimensional” positional information includes positions along anaxis. Exemplary “two-dimensional” positional information includesmotions in a plane. Exemplary “three-dimensional” positional informationincludes instantaneous or average velocities in space. Further examplesinclude other representations of spatial information. Historical dataregarding one or more types of positional information may also bedetermined and/or stored, including, for example, historical data thattracks position, motion, or instantaneous velocity over time.

In some embodiments, the input device (100) is implemented withadditional input components that are operated by the processing system(110) or by some other processing system. These additional inputcomponents may provide redundant functionality for input in the sensingregion (120), or some other functionality. FIG. 1 shows buttons (130)near the sensing region (120) that may be used to facilitate selectionof items using the input device (100). Other types of additional inputcomponents include sliders, balls, wheels, switches, and the like.Conversely, in some embodiments, the input device (100) may beimplemented with no other input components.

In some embodiments, the input device (100) includes a touch screeninterface, and the sensing region (120) overlaps at least part of anactive area of a display screen. For example, the input device (100) mayinclude substantially transparent sensor electrodes overlaying thedisplay screen and provide a touch screen interface for the associatedelectronic system. The display screen may be any type of dynamic displaycapable of displaying a visual interface to a user, and may include anytype of light emitting diode (LED), organic LED (OLED), cathode ray tube(CRT), liquid crystal display (LCD), plasma, electroluminescence (EL),or other display technology. The input device 100 and the display screenmay share physical elements. For example, some embodiments may utilizesome of the same electrical components for displaying and sensing. Asanother example, the display screen may be operated in part or in totalby the processing system (110).

It should be understood that while many embodiments of the invention aredescribed in the context of a fully functioning apparatus, themechanisms of the present invention are capable of being distributed asa program product (e.g., software) in a variety of forms. For example,the mechanisms of the present invention may be implemented anddistributed as a software program on information bearing media that arereadable by electronic processors (e.g., non-transitorycomputer-readable and/or recordable/writable information bearing mediareadable by the processing system (110)). Additionally, the embodimentsof the present invention apply equally regardless of the particular typeof medium used to carry out the distribution. For example, softwareinstructions in the form of computer readable program code to performembodiments of the invention may be stored, in whole or in part,temporarily or permanently, on a non-transitory computer readablestorage medium. Examples of non-transitory, electronically readablemedia include various discs, physical memory, memory, memory sticks,memory cards, memory modules, and or any other computer readable storagemedium. Electronically readable media may be based on flash, optical,magnetic, holographic, or any other storage technology.

Although not shown in FIG. 1, the processing system, the input device,and/or the host system may include one or more computer processor(s),associated memory (e.g., random access memory (RAM), cache memory, flashmemory, etc.), one or more storage device(s) (e.g., a hard disk, anoptical drive such as a compact disk (CD) drive or digital versatiledisk (DVD) drive, a flash memory stick, etc.), and numerous otherelements and functionalities. The computer processor(s) may be anintegrated circuit for processing instructions. For example, thecomputer processor(s) may be one or more cores, or micro-cores of aprocessor. Further, one or more elements of one or more embodiments maybe located at a remote location and connected to the other elements overa network. Further, embodiments of the invention may be implemented on adistributed system having several nodes, where each portion of theinvention may be located on a different node within the distributedsystem. In one embodiment of the invention, the node corresponds to adistinct computing device. Alternatively, the node may correspond to acomputer processor with associated physical memory. The node mayalternatively correspond to a computer processor or micro-core of acomputer processor with shared memory and/or resources.

FIG. 2A shows a schematic diagram of an embodiment of determinationmodule (200) in accordance with one or more embodiments of theinvention. The determination module (200) includes functionality todetect when an input object in the sensing region. For example, thedetermination module may detect the input object when the input objectis in physical contact with the surface of the sensing region and/orwhen the input object is within a threshold distance to the surface ofthe sensing region. In one or more embodiments of the invention, thedetermination module (200) may further include functionality to generatepositional information describing the input object in the sensingregion. As shown in FIG. 2, the determination module (200) includes amultistage classifier (220).

The multistage classifier (220) may be hardware, software, or acombination thereof. In one or more embodiments of the invention, amultistage classifier (220) is logic that includes multiple stages toidentify a type of the input object based on a set of measurementsobtained from a capacitive image. Turning briefly to FIG. 2B, FIG. 2Bshows an example diagram of a capacitive image in accordance with one ormore embodiments of the invention. The size and shape of the capacitiveimage may be different than that shown in FIG. 2B without departing fromthe scope of the invention.

In one or more embodiments of the invention, the capacitive image is animage of the capacitance detected in the sensing surface. In one or moreembodiments of the invention, the size and shape of the capacitive imagematches the sensing surface. As shown in FIG. 2B, the capacitive imagemay be partitioned into pixels (shown as a small boxes in FIG. 2B). Forexample, example pixel (290) is in the first column and third row of thecapacitive image. Each pixel has a value reflecting a magnitude ofcapacitance at the corresponding portion of the sensing surface. Forexample, if the input object is touching the area of the sensing surfacecorresponding to at least example pixel (290) in the capacitive image,the value of example pixel (290) in the capacitive image may be greaterthan or less than if the input object was not present in the sensingregion.

In one or more embodiments of the invention, the group of pixels whosevalues are modified by the presence of the input object may be referredto as a detection region. For example, consider the scenario in whichthe input object is over the sensing surface corresponding to the greypixels of the example diagram of the capacitive image (280). In otherwords, each grey pixel has a value that is affected by the presence ofthe input object. In the example, the grey pixels form the detectionregion (295) in accordance with one or more embodiments of theinvention.

Returning to FIG. 2A, the set of measurements may include calculatedmeasurements and statistics describing the impact of the input object inthe detection region. For example, the set of measurements may includearea of the detection region, a slope statistic describing a slope ofthe detection region, a pixel value statistic describing values ofpixels of the detection region, and other properties of the detectionregion. In one embodiment, the slope is a difference in value betweenadjacent pixels. In other embodiments, the slope is a different in valuebetween any two pixels. The slope statistic may be the maximum slope inthe detection region, the average slope in the detection region, oranother statistic about the slope in the detection region. The pixelvalue statistic may be the maximum pixel value of pixels in thedetection region, the average pixel value of pixels in the detectionregion, or another statistic about the pixel values in the detectionregion.

Continuing with FIG. 2A, the multistage classifier (220) may includefunctionality to determine the type of the input object from multiplepossible types. The type of the input object specifies what the inputobject is. For example, the type of input object may be a finger, apointer instrument, palm, hovering palm, or variety of input object. Inone or more embodiments of the invention, the multistage classifierincludes a first stage classifier (230) and a second stage classifier(240).

The first stage classifier (230) may include functionality to use asubset of the set measurements to obtain a first output. For example,the first output may be a first level classification of the inputobject. Specifically, the first output may be a preliminary estimate ofthe type of the input object based on the subset of measurements and/ora confidence level. In one or more embodiments of the invention, thefirst stage classifier (230) may be a Bayesian classifier.

In one or more embodiments of the invention, the second stage classifier(240) includes functionality to use a subset of measurements to obtain asecond output. The second output may include revised determination ofthe type of input object and/or a confidence level. The subset ofmeasurements used by the second stage classifier (240) may be differentfrom the subset of measurements used by the first stage classifier(230). In one or more embodiments of the invention, the second stageclassifier (230) includes a first step classifier (250) and a secondstep classifier (260).

In one or more embodiments of the invention, the first step classifier(250) includes functionality to distinguish between subsets of types ofinput objects. For example, if the first output identifies preliminarilythat the input object is a type in a first subset of types, the firststage classifier includes functionality to classify the input objectamong the types specified in the first subset of types. Continuing withthe example, if the first output identifies preliminarily that the inputobject is a type in a second subset of types, then the first stageclassifier includes functionality to classify the input object among thetypes specified in the second subset of types, which are different fromthe first subset of types. Any number of subsets of types may existwithout departing from the scope of the invention. In one or moreembodiments of the invention, the first step classifier (250) is aBayesian classifier.

In one or more embodiments of the invention, the second step classifier(260) includes functionality to confirm or revise the type of inputobject classified by the first step classifier (260). In one or moreembodiments of the invention, the second step classifier (260) isconfigured to execute when the second output is a particular type orsubset of types. In one non-limiting example, the second step classifier(260) may be configured to execute only when the first step classifier(250) indicates that the input object is a finger. In one or moreembodiments of the invention, the second step classifier (260) isBayesian classifier that uses a fisher linear discriminant.

Although FIG. 2A shows the multistage classifier (220) as having twostage classifiers and two step classifiers, the multistage classifier(220) may include more than two stages and any number of steps withoutdeparting from the scope of the invention. Further, while FIGS. 1, 2A,and 2B show a particular configuration of components, otherconfigurations may be used without departing from the scope of theinvention. For example, various components may be combined to create asingle component. As another example, the functionality performed by asingle component may be performed by two or more components.

FIGS. 3A, 3B, 3C, 4, and 5 show flowcharts in accordance with one ormore embodiments of the invention. While the various steps in theseflowcharts are presented and described sequentially, one of ordinaryskill will appreciate that some or all of the steps may be executed indifferent orders, may be combined or omitted, and some or all of thesteps may be executed in parallel. Furthermore, the steps may beperformed actively or passively. For example, some steps may beperformed using polling or be interrupt driven in accordance with one ormore embodiments of the invention. By way of an example, decision stepsmay not require a processor to process an instruction unless aninterrupt is received to signify that condition exists in accordancewith one or more embodiments of the invention. As another example,decision steps may be performed by performing a test, such as checking adata value to test whether the value is consistent with the testedcondition in accordance with one or more embodiments of the invention.

FIG. 3A shows a flowchart for training the multistage classifier inaccordance with one or more embodiments of the invention. In Step 301,training data is received in accordance with one or more embodiments ofthe invention. In one or more embodiments of the invention, capacitanceimages for input objects of known types are obtained. For example, knowninput objects may be added to the sensing region and capacitance imagemay be obtained from the known input objects. Further, a set ofmeasurements may be determined from the capacitance image. In one ormore embodiments of the invention, determining the set of measurementsmay be performed as discussed below with reference to FIG. 4.Determining the set of measurements may be obtaining the set ofmeasurements from another module or device without departing from thescope of the invention.

In Step 303, decision functions and parameters are determined using thetraining data in accordance with one or more embodiments of theinvention. The decision function distinguishes between types of inputobjects. Determining the decision functions and parameters may beperformed on a per classifier basis. Specifically, a subset ofmeasurements is selected for the classifier. Additionally, training datacorresponding to the types of input objects that are classified by theclassifier are identified. For example, if the classifier distinguishesbetween pointer instrument, finger, palm, and hovering palm, thentraining data for a pointer instrument, finger, palm, or hovering palmbeing in the sensing region is used in Step 303 to determine decisionfunctions and parameters for the classifier. By way of another example,if the classifier only distinguishes between a pointer instrument andfinger, then only training data for a pointer instrument or finger beingin the sensing region is used in Step 303 to determine decisionfunctions and parameters for the classifier. An actual input object ofthe particular type may be used for the training data for the particulartype. For example, a finger may be placed in the sensing region in orderto obtain training data for the finger. Alternatively or additionally,input objects that approximate the particular type, such as conductiveobjects or slugs, may be used for training. For example, a conductiveslug that has dimensions and properties which approximate a finger maybe placed in the sensing region to obtain training data for a finger.

For example, the first stage classifier may be a bivariate Bayesclassifier that uses a decision function of the form: ƒ(x)=ax₁²+bx₁x₂+cx₂ ²+dx₁+ex₂+ƒ, where x is a subset of the set of measurements(e.g., x₁ is a first measurement in the set of measurements and x₂ is asecond measurement in the set of measurements), a, b, c, d, e, and f areparameters calculated using the training data and f(x) is a result ofthe decision function. In the example, during training, a, b, c, d, e,and f are selected that for a given x in the training data, the correcttype is selected. In one or more embodiments of the invention, anindividual decision function (f(x)) is calculated for each possible typeof input object. In particular, a decision function and parameters for afirst type of input object may be defined using only training data forthe first type of input object. Similarly, a decision function andparameters for a second type of input object may be defined using onlytraining data for the second type of input object, and so forth.

By way of another example, the second stage first step classifier mayuse an unvariate Bayes classifier that uses a decision function of theform: ƒ(x)=ax₁ ²+dx₁+ƒ, where x is a subset of measurements having asingle measurement, a, d, and f are parameters, and f(x) is aclassification result. In the example, during training, a, d, and f areselected that for a given x in the training data, the correct type isselected. Similar to the previous example, in one or more embodiments ofthe invention, an individual decision function (f(x)) is calculated foreach possible type of input object.

By way of another example, the second stage second step classifier maybe a univariate Bayes classifier that uses a fisher linear discriminant.In the example, the subset of the set of measurements is projected ontovector w to obtain scalars y, where y=w^(t)x.

${\overset{\sim}{S}}_{i}^{2} = {\sum\limits_{y \in {typei}}( {y - {\overset{\sim}{m}}_{i}} )^{2}}$is defined whereby {tilde over (m)}_(i) is the mean of class i for y. Avector w is selected that maximizes

${j(w)} = {\frac{{{{\overset{\sim}{m}}_{1} - {\overset{\sim}{m}}_{2}}}^{2}}{{\overset{\sim}{S}}_{1}^{2} + {\overset{\sim}{S}}_{2}^{2}}.}$In other words, the vector w is selected to increase the differencebetween the mean of the training data for the two classes and minimizethe scatter of training data within each class. The Fisher lineardiscriminant is a scalar calculated by multiplying the vector w by thevector of the subset of measurements. Using the fisher lineardiscriminant for x₁, the decision function of the form ƒ(x)=ax₁ ²+dx₁+ƒ,where a, d, and f, are parameters, is obtained. In the example, duringtraining, a, d, and f are selected that for a given fisher lineardiscriminant calculated from the training data, the correct type isselected. Similar to the previous examples, in one or more embodimentsof the invention, an individual decision function (f(x)) is calculatedfor each possible type of input object.

The above are only a few examples of the decision functions andparameters that may be calculated and used. Other decision functions andparameters may be used without departing from the invention. Further,the above is only a few examples of the classifiers. Other classifiersmay be used without departing from the scope of the invention.

In Step 305, a classification is performed using the decision functionsand parameters in accordance with one or more embodiments of theinvention. In particular, a multistage classification may be performedwhen new input objects of an unknown type are detected in the sensingregion. A classification may be performed as discussed below and in FIG.3B.

In one or more embodiments of the invention, preliminary determinationsmay be performed prior to any decision function classification. Forexample, if the input object is detected at the corner or edge of thesensing region, the input object may be identified as a palm. By way ofanother example, the aspect ratio may be calculated and used todetermine if the input object is a part of a palm. In one or moreembodiments of the invention, the aspect ratio is the numerator dividedby a denominator, whereby the numerator is the maximum of width andlength and the denominator is the minimum of width and length, wherewidth is the width of the detection region and length is the length ofthe detection region. If the aspect ratio is greater than a threshold,then the input object may be identified as a palm. In other words, theshape may be considered too narrow for a finger. In such a scenario,further classification may or may not be performed.

FIG. 3B shows a flowchart for determining a type of input object inaccordance with one or more embodiments of the invention. In Step 311, acapacitive image is obtained from resulting signals of a capacitiveinput device. In one or more embodiments of the invention, transmitterelectrodes may transmit transmitter signals. The receiver electrodes mayreceive resulting signals that result comprise effects corresponding tothe transmitter signals. From the resulting signals, a capacitive imageis obtained.

In Step 313, an input object is detected in the sensing region based onthe capacitive image. Segmentation may be performed to isolate the inputobject from other input objects, if exists. Further, the capacitiveimage may be adjusted according to a baseline to account forinterference.

In Step 315, a set of measurements are obtained from the capacitiveimage for the input object. Obtaining the set of measurements may beperformed, for example, as discussed below and in FIG. 4.

In Step 317, a multistage classification is performed to obtain aclassification result in accordance with one or more embodiments of theinvention. In one or more embodiments of the invention, the multistageclassification is performed as discussed below and in FIG. 3C.

In Step 319, the classification result is presented in accordance withone or more embodiments of the invention. Specifically, theclassification result may be transmitted to another component or devicein accordance with one or more embodiments of the invention. In one ormore embodiments of the invention, the classification result may bedirectly or indirectly used to present output to the user. In one ormore embodiments of the invention, one or more actions are performedbased on the classification result. For example, if the classificationresult indicates that the input object is a palm with a high confidencelevel, the input object may be ignored because the input object is mostlikely an inadvertent input by a user in the sensing region. By way ofanother example, if the input object is a pointer instrument, the hostmay respond faster to the user because a greater confidence may be givento the positional information of the input object.

FIG. 3C show a flowchart for performing a multistage classification inaccordance with one or more embodiments of the invention. In Step 321, afirst stage classification is performed to obtain a first output. In oneor more embodiments of the invention, the first stage classification isperformed using a first subset of the set of measurements. Specifically,the first stage performs a preliminary classification using the firstsubset of measurements. For example, the preliminary classificationperforms an initial classification of the input object into a particulartype from all possible types. By way of another example, the preliminaryclassification may identify a subset of types in which the input objectis a member.

The first stage classification may be performed by calculating theresults of the decision functions defined during the first stageclassifier using the subset of measurements as input. In one or moreembodiments of the invention, each decision function of the first stageclassifier is defined for a particular type. The type associated withthe decision function having the greatest resulting value for the subsetof measurements of the input object is the type associated with theinput object during the first stage classification. For example, thedecision functions may be the decision functions discussed above withreference to Step 303 of FIG. 3A.

In Step 323, a second stage classification is performed to obtain aclassification result in accordance with one or more embodiments of theinvention. The second stage classification may include multiple steps.In Step 325, a first step classification is performed based on the firstoutput to obtain a second output. Specifically, the first stepclassifier may identify the subset of types of the type in the firstoutput. If the first output indicates that the type of input object is amember of a first subset of types, then the first step classifier mayonly consider and classify the input object into a type that is only inthe first subset of types. Similarly, if the first output indicates thatthe type of input object is a member of a second subset of types, thenthe first step classifier may only consider and classify the inputobject into a type that is only in the second subset of types, andignore types in the first subset of types.

In one or more embodiments of the invention, the second stage, firststep classification may be performed by calculating the results of thedecision functions defined during the first step classifier using asubset of measurements as input. In one or more embodiments of theinvention, each decision function of the first step classifier isdefined for a particular type. The type associated with the decisionfunction having the greatest resulting value for the subset ofmeasurements of the input object is the type associated with the inputobject during the second stage, first step classification. For example,the decision functions may be the decision functions discussed abovewith reference to Step 303 of FIG. 3A.

In Step 327, a determination is made whether to perform the second stepclassification in accordance with one or more embodiments of theinvention. In one or more embodiments of the invention, the second stepclassification may be performed if the input object is defined asparticular type during the first step.

If a determination is made to perform the second step classification,then in Step 329, the second step classification is performed. In one ormore embodiments of the invention, the second stage, second stepclassification may be performed by calculating the results of thedecision functions defined during the second step classifier usinganother subset of measurements as input. In one or more embodiments ofthe invention, each decision function of the second step classifier isdefined for a particular type. The type associated with the decisionfunction having the greatest resulting value for the subset ofmeasurements of the input object is the type associated with the inputobject during the second stage, second step classification. For example,the decision functions may be the decision functions discussed abovewith reference to Step 303 of FIG. 3A. In the example, the fisher lineardiscriminant may be calculated for the subset of measurements of theinput object and then used in the decision functions to obtain f(x) foreach type.

In one or more embodiments of the invention, the result of the secondstep classification replaces the result of the first step classificationif the result of the second step classification indicates that the inputobject is a predefined type. For example, the predefined type may be apalm. If the second step classification indicates that the input objectis a palm, then the second step classification is used rather than theresult of the first step classification in accordance with one or moreembodiments of the invention. If the result is not the predefined type,then the first step classification result is used in accordance with oneor more embodiments of the invention. Other deterministic functions maybe used to select whether to use the result of the first stepclassification or the second step classification without departing fromthe scope of the invention.

In Step 331, a classification result is determined. In one or moreembodiments of the invention, the classification result includes a typeand a confidence level. Any technique for calculating a confidence maybe used without departing from the scope of the invention.

For example, the confidence level for the type in the first output maybe the result of adding the value of the first stage decision functionfor the particular type to the value of the second stage decisionfunction for the particular type. The second stage decision function isthe either the first step decision function or the second step decisionfunction depending on which type is used. In the example, if the firstoutput is pointer instrument, then the value of the decision functionused in the first stage classifier for pointer instrument is added tothe value of the decision function used in the second stage classifierfor pointer instrument to obtain a confidence level for pointerinstrument. Similarly, if the first output is hovering palm, then thevalue of the decision function used in the first stage classifier forhovering palm is added to the value of the decision function used in thesecond stage classifier for hovering palm to obtain a confidence levelfor hovering palm. Similar to the above example for the first output,the confidence level may be calculated for the type identified in thesecond stage. In particular, the confidence level for the type in thesecond stage may be the result of adding the value of the first stagedecision function for the type identified in the second stage to thevalue of the second stage decision function for the type in the secondstage. Mathematically, calculating the confidence level may be performedusing the equation C_(i)=ƒ_(i1)(x)+ƒ_(i2)(x), where i is type i selectedin either the first stage or second stage, ƒ_(i1)(x) is the result ofdecision function for type i calculated in the first stage, andƒ_(i2)(x) is the result of decision function for type i calculated inthe second stage.

The above is only an example technique for calculating confidence. Othertechniques and equations may be used to calculate a confidence level inaccordance with one or more embodiments of the invention.

In one or more embodiments of the invention, if the confidence level forthe first stage is greater than the confidence level for the secondstage, then the first output is used as the classification result.Otherwise, the second stage result is used as the classification resultin accordance with one or more embodiments of the invention. Other rulesmay be applied for selecting whether to use the first stageclassification result or the second stage classification result may beused without departing from the scope of the invention.

Although FIG. 3C describes only two stages and two steps in the secondstage for the multistage classifier, more stages or a different numberof steps may be used without departing from the scope of the invention.The additional stages or additional steps may be performed in similarmanner to the stages and steps discussed above. Further, the additionalstages and/or steps may use a different combination of measurements inaccordance with one or more embodiments of the invention.

FIG. 4 shows a flowchart for obtaining measurements in accordance withone or more embodiments of the invention. Specifically, FIG. 4 shows anexample flowchart for obtaining area, width, maximum pixel value andmaximum slope in accordance with one or more embodiments of theinvention. Other measurements may be calculated and used in one or moreclassifiers without departing from the scope of the invention.

In Step 401, the area of the input object in the sensing region isidentified in accordance with one or more embodiments of the invention.In one or more embodiments of the invention, the area is determined asthe number of pixels that are in the detection region. In one or moreembodiments of the invention, determining whether a particular pixel isin the detection region may be based on whether the value of theparticular pixel satisfies a threshold amount above a baseline value.Once a determination is made for each pixel, whether the pixel is in adetection region, the pixels that are in the detection region arecounted and used as the area.

In Step 403, a determination is made whether the input object is on theedge of the sensing region. For example, the determination may be basedon whether the edge pixels of the capacitive image are in the detectionregion. If the input object is at the edge of the sensing region, thenarea of the input object may expand passed the edge of the sensingregion. If the input object is on the edge of the sensing region, thetotal area of the input object is estimated in Step 405. The total areamay be estimated as a function of the values of the pixels in thedetection region. For example, the function may be

${A = {{{Ae} + {Ao}} = {\frac{2a}{{2a} - b}{Ao}}}},$where A is total area, Ae is extended area, Ao is measured area, a ismaximum value of a pixel in the detection region, and b is the maximumvalue of a pixel at the edge of the detection region. Other functionsmay be used to estimate total area in accordance with one or moreembodiments of the invention.

In Step 407, the width of the input object in each direction iscalculated in accordance with one or more embodiments of the invention.In one or more embodiments of the invention, the width of the inputobject may be calculated by counting the maximum number of pixels in thex direction in the detection region for the x direction width. Further,the maximum number of pixels in the y direction in the detection regionmay be calculated for the y direction width. Thus, if the detectionregion is narrow at one spot and wide at another spot, the width is thenumber of pixels at the wide spot.

Other techniques may be used to calculate the widths. For example, thewidths may be the number of pixels in the particular direction thatsatisfies a threshold. For example, the threshold may be a scalingfactor multiplied by the maximum value of a pixel in the particulardirection.

In Step 409, a maximum pixel value of the input object in the capacitiveimage is calculated in accordance with one or more embodiments of theinvention. Calculating the maximum pixel value includes determining thepixel value that has the largest value in the detection region. Further,the average value of the pixels in the detection region may becalculated by summing all values of pixels in the detection region anddividing by the measured area.

In Step 411, a difference between each adjacent pixel in the capacitiveimage corresponding to the input object is calculated to obtain slopesfor adjacent pixels in accordance with one or more embodiments of theinvention. In one or more embodiments of the invention, a separate slopeis calculated for an x direction and for a y direction for each set ofadjacent pixels.

In Step 413, the maximum slope is identified from the slopes calculatedin Step 411 in accordance with one or more embodiments of the invention.In one or more embodiments of the invention, the maximum slope is themaximum value of the slopes calculated in the x direction and the ydirection. Alternatively or additionally, a separate maximum slope forthe x direction may be determined and a separate maximum slope for the ydirection may be determined.

The above are only a few of the example measurements that may bedetermined for classification. Other measurements may be determined andused for the multistage classification in accordance with one or moreembodiments of the invention.

FIG. 5 shows a flowchart for distinguishing between whether the inputobject is a finger, pointer instrument, palm or hovering palm. Thefollowing example is for explanatory purposes only and not intended tolimit the scope of the invention. In the following example, consider thescenario in which the classifiers use the corresponding decisionfunctions discussed above and in Step 303 of FIG. 3A.

In Step 501, a capacitive image is obtained from resulting signals of acapacitive input device in accordance with one or more embodiments ofthe invention. In one or more embodiments of the invention, transmitterelectrodes may transmit transmitter signals. The receiver electrodes mayreceive resulting signals comprising effects corresponding to thetransmitter signals. From the resulting signals, a capacitive image isobtained.

In Step 503, an input object is detected in the sensing region using thecapacitive image in accordance with one or more embodiments of theinvention. Segmentation may be performed to isolate the input objectfrom other input objects, if exists. Further, the capacitive image maybe adjusted according to a baseline to account for interference. Achange in the values of pixels in the capacitive image adjusted for thebaseline may indicate a presence of input object in the sensing region.

In Step 505, a set of measurements are obtained from the capacitiveimage for the input object in accordance with one or more embodiments ofthe invention. In one or more embodiments of the invention, the set ofmeasurements that are obtained may include the area of the detectionregion, the maximum slope of the detection region, and the average pixelvalue of the detection region. The measurements may be obtained usingthe techniques described above with reference to FIG. 4.

In Step 507, a first stage classification is performed to identify theinput object as a finger, pointer instrument, palm, or hovering palm inaccordance with one or more embodiments of the invention. In one or moreembodiments of the invention, the first stage classification isperformed using maximum slope and average pixel value as parameters. Inparticular, during training, a decision function may be defined for eachof a finger, a pointer instrument, a palm, and a hovering palm. Forexample, the decision function may be of the form: ƒ(x)=ax₁ ²+bx₁x₂+cx₂²+dx₁+ex₂+ƒ, where x₁ is a maximum slope, x₂ is maximum pixel value ofthe input object, a, b, c, d, e, and f are parameters calculated usingthe training data during training and f(x) is a result of the decisionfunction. In the example, the result of the decision function forfinger, the result of the decision function for pointer instrument, theresult of the decision function for palm, and the result of the decisionfunction for hovering palm are all calculated using the maximum slopeand average pixel value obtained in Step 505. The type corresponding tothe result of the decision function with the greatest value is selectedas the first output in accordance with one or more embodiments of theinvention. Thus, in the example, if result of the decision function forfinger is greater than the results of the decision functions for pointerinstrument, palm, or hovering palm, then finger is selected as the firstoutput.

In one or more embodiments of the invention, after the first stageclassification, the flow may proceed to the second stage classification(508). In one or more embodiments of the invention, in Step 509 of thesecond stage classification, a determination is made whether the firstoutput is that the input object is a pointer instrument or hovering palmin accordance with one or more embodiments of the invention.

In Step 511, if the first output indicates that the input object is apointer instrument or hovering palm, than the second stage a first stepclassification is performed to distinguish between the pointerinstrument and hovering palm. In one or more embodiments of theinvention, the first step classification is performed using area as aparameter. In particular, during training, a decision function may bedefined for a pointer instrument and a hovering palm. For example, thedecision function of the form: ƒ(x)=ax₁ ²+dx₁+ƒ, where x is area, a, d,and f are parameters identified during training, and f(x) is aclassification result. In the example, the result of the decisionfunction for pointer instrument and the result of the decision functionfor hovering palm are both calculated using the area obtained in Step505. The type corresponding to the result of the decision function withthe greatest value is selected as the second output in accordance withone or more embodiments of the invention. Thus, in the example, ifresult of the decision function for pointer instrument is greater thanthe result of the decision function for hovering palm, then pointerinstrument is selected as the second output.

If the first output does not indicate that the input object is a pointerinstrument or hovering palm, then the first step classification isperformed to distinguish between a finger and a palm in Step 513. Thefirst step classification to distinguish between finger and palm may beperformed as discussed above with reference to Step 511, with thedecision functions for finger and hovering palm used.

Continuing with the example FIG. 5, in Step 515, a determination is madewhether the input object is classified as a finger in one or moreembodiments of the invention. In Step 517, if the input object isclassified as a finger, then a second step classification may beperformed to distinguish between a finger and a palm. In one or moreembodiments of the invention, the second step classification isperformed using area and average pixel value as parameters. Inparticular, during training, a decision function may be defined for afinger and a decision function may be defined for a palm using thefisher linear discriminant as input. The decision functions may be ofthe form ƒ(x)=ax₁ ²+dx₁+ƒ, where a, d, and f, are parameters and x₁ isthe fisher linear discriminant. In the example, the dot product of thevector having the area and average pixel value and the vector w,obtained during training, is calculated to obtain the fisher lineardiscriminant for the input object detected in Step 503. In the example,the result of the decision function for finger and the result of thedecision function for palm are both calculated. The type correspondingto the result of the decision function with the greatest value isselected.

If the result is palm, then palm is selected as the output for thesecond stage and the confidence level is calculated using the decisionfunctions of the second step for the second stage. Further, anadditional check may be performed to determine whether the input objectis a palm based on the ratio of the width in the x direction (“wx”) tothe width in the y direction (“wy”). Specifically, if the maximum of wxdivided by wy and wy divided by wx is greater than a threshold, theoutput of the second stage may be palm and confidence level may be setto a predetermined amount, such as zero. In one or more embodiments ofthe invention, if the result is not palm in the second step or theadditional check or if the second step is not performed, then the priorresult is used and the confidence level is calculated using the decisionfunctions of the first step for the second stage.

In Step 519, the classification result is determined in accordance withone or more embodiments of the invention. In one or more embodiments ofthe invention, the classification result is determined by identifyingthe type in the first output (“type1”) and the type in the second output(“type2”). The results of the decision functions for type1 in the firststage and the second stage are added together to obtain a firstconfidence level (“CL1”). Similarly, the results of the decisionfunctions for type2 in the first stage and the second stage aremultiplied together to obtain a second confidence level (“CL2”). In theexample, if CL1 is greater than or equal to CL2, then type1 is in theclassification result with a confidence level of CL1, otherwise type2 isin the classification result with a confidence level of CL2.

By way of a more concrete example, consider the scenario in which thefirst stage output is palm and the second stage output is finger. In theexample, the result of the decision function for palm in the first stageis added to the result of the decision function for palm in the firststep of the second stage to obtain CL1. Further, the result of thedecision function for finger in the first stage is added to the resultof the decision function for finger of the second stage to obtain CL2.If CL1 is greater than or equal to CL2, then palm is transmitted asoutput with a confidence level of CL1. Otherwise, finger is transmittedas output with a confidence level of CL2.

By way of another concrete example, consider the scenario in which thefirst stage output is pointer instrument and the second stage output ispalm identified in the second step. In the example, the result of thedecision function for pointer instrument in the first stage is added tothe result of the decision function for pointer instrument in the secondstep of the second stage to obtain CL1. Further, the result of thedecision function for palm in the first stage is added to the result ofthe decision function for palm in the second step of the second stage toobtain CL2. If CL1 is greater than or equal to CL2, then pointerinstrument is transmitted as output with a confidence level of CL1.Otherwise, palm is transmitted as output with a confidence level of CL2.

Continuing with the example FIG. 5, in Step 521, the classificationresult is transmitted as output in accordance with one or moreembodiments of the invention. For example, the input device may transmitthe classification result to a host or other module of the processingsystem, which determines based on the confidence level and type whetherand/or how to respond to the input object in the sensing region. Invarious embodiments, the classification result may be combined withoutput data from other sensing devices, and a determination may be basedon the combined data.

FIG. 5 and the corresponding description are only for explanatoryexample purposes. Other decision functions, types, calculations, andother features than those presented in FIG. 5 and correspondingdescription may be used without departing from the scope of theinvention.

Further, although the above description and claims use ordinal numbers,no ordering intended to be expressly or implicitly required in eitherthe description or the claims. Rather, the use of first, second, third,and so forth before an element is merely to indicate that the elementsare different. Thus, a second may precede a first without departing fromthe scope of the invention or the claims unless expressly indicated tothe contrary.

While the invention has been described with respect to a limited numberof embodiments, those skilled in the art, having benefit of thisdisclosure, will appreciate that other embodiments can be devised whichdo not depart from the scope of the invention as disclosed herein.Accordingly, the scope of the invention should be limited only by theattached claims.

What is claimed is:
 1. A processing system for an input devicecomprising: a sensor module comprising sensor circuitry configured to becoupled to a plurality of transmitter electrodes and a plurality ofreceiver electrodes, wherein the sensor module is configured to transmittransmitter signals with the plurality of transmitter electrodes andreceive resulting signals with the plurality of receiver electrodes; anda determination module configured to: obtain a set of measurements foran input object detected in a sensing region of the input device from acapacitive image, wherein the capacitive image is generated based on theresulting signals, and perform, based on the set of measurements, amultistage classification to obtain a classification result identifyinga type of the input object, wherein the multistage classificationcomprises: a first classification using a first subset of the set ofmeasurements to obtain a first output, wherein the first classificationselects, as the first output, a single subset of types from a firstsubset of types and a second subset of types, the first subset of typesbeing disjoint from the second subset of types, wherein the first subsetof types comprises a finger and a palm, wherein the second subset oftypes comprises a pointer instrument and a hovering palm, and whereinthe first subset of the set of measurements comprises a maximum slope,wherein the maximum slope is a maximum difference in value betweenadjacent pixels in the input object as represented in the capacitiveimage; and a second classification using a second subset of the set ofmeasurements, wherein the second classification comprises: a first stepperformed based on the first output to obtain a second output, and asecond step performed based on the second output, wherein the secondstep comprises:  calculating a set of results of a plurality of decisionfunctions using an average pixel value of the input object, theplurality of decision functions defined for each type in the singlesubset of types, and  selecting an optimal result from the set ofresults, wherein the multistage classification distinguishes betweeneach of a plurality of types comprising the pointer instrument, thehovering palm, the palm, and the finger, and wherein the type of theinput object is at least one of the plurality of types.
 2. Theprocessing system of claim 1, wherein the second step is performed onlywhen the second output is the finger.
 3. The processing system of claim1, wherein the first subset of the set of measurements is different thanthe second subset of the set of measurements.
 4. The processing systemof claim 1, wherein the first subset of the set of measurements furthercomprises a maximum pixel value of the input object as represented inthe capacitive image.
 5. The processing system of claim 1, wherein thesecond subset of the set of measurements comprises an area of the inputobject and width.
 6. The processing system of claim 1, wherein the firststep comprises a Bayesian analysis of area of the input object, and thesecond step comprises: obtaining a fisher linear discriminant of areaand average pixel value, and performing a Bayesian analysis of thefisher linear discriminant.
 7. The processing system of claim 1, whereinthe classification result further comprises a confidence level.
 8. Amethod for classifying a type of input object, the method comprising:obtaining a set of measurements for an input object detected in asensing region of the input device from a capacitive image, wherein thecapacitive image is generated based on resulting signals obtained by asensor module; and performing, based on the set of measurements, amultistage classification to obtain a classification result identifyingthe type of the input object, wherein performing the multistageclassification comprises: classifying the input object into a singlesubset of types using a first subset of the set of measurements, whereinthe single subset of types is selected from a first subset of types anda second subset of types, the first subset of types being disjoint fromthe second subset of types, wherein the first subset of types comprisesa finger and a palm, wherein the second subset of types comprises apointer instrument and a hovering palm, and wherein the first subset ofthe set of measurements comprises a maximum slope, wherein the maximumslope is a maximum difference in value between adjacent pixels in theinput object as represented in the capacitive image; and classifying theinput object to identify the type using a second subset of the set ofmeasurements, wherein classifying the input object to identify the typecomprises: performing a first step based on the single subset of typesto obtain an output, and performing a second step based on the output,wherein the second step comprises:  calculating a set of results of aplurality of decision functions using an average pixel value of theinput object, the plurality of decision functions defined for each typein the single subset of types, and  selecting an optimal result from theset of results, wherein the multistage classification distinguishesbetween each of a plurality of types comprising the pointer instrument,the hovering palm, the palm, and the finger, and wherein the type ofinput object is at least one of the plurality of types.
 9. The method ofclaim 8, wherein the first subset of the set of measurements aredifferent than the second subset of the set of measurements.
 10. Themethod of claim 8, wherein the first subset of the set of measurementsfurther comprises a maximum pixel value of the input object asrepresented in the capacitive image.
 11. The method of claim 8, whereinthe second subset of the set of measurements comprises an area of theinput object and width.
 12. The method of claim 8, wherein the secondstep is performed only when the second output is the finger.
 13. Themethod of claim 8, wherein the first step comprises a Bayesian analysisof area of the input object, and the second step comprises: obtaining afisher linear discriminant of area and average pixel value, andperforming a Bayesian analysis of the fisher linear discriminant. 14.The method of claim 8, wherein the classification result furthercomprises a confidence level.
 15. An input device comprising: aplurality of transmitter electrodes configured to transmit transmittersignals; a plurality of receiver electrodes configured to receiveresulting signals from the plurality of transmitter signals; and aprocessing system configured to: obtain a set of measurements for aninput object detected in a sensing region of the input device from acapacitive image, wherein the capacitive image is generated based on theresulting signals, and perform, based on the set of measurements, amultistage classification to obtain a classification result identifyinga type of the input object, wherein the multistage classificationcomprises: a first classification using a first subset of the set ofmeasurements to obtain a first output, wherein the first classificationselects, as the first output, a single subset of types from a firstsubset of types and a second subset of types, the first subset of typesbeing disjoint from the second subset of types, wherein the first subsetof types comprises a finger and a palm, wherein the second subset oftypes comprises a pointer instrument and a hovering palm, and whereinthe first subset of the set of measurements comprises a maximum slope,wherein the maximum slope is a maximum difference in value betweenadjacent pixels in the input object as represented in the capacitiveimage; and a second classification using a second subset of the set ofmeasurements, wherein the second classification comprises: a first stepperformed based on the first output to obtain a second output, and asecond step performed based on the second output, wherein the secondstep comprises:  calculating a set of results of a plurality of decisionfunctions using an average pixel value of the input object, theplurality of decision functions defined for each type in the singlesubset of types, and  selecting an optimal result from the set ofresults, wherein the multistage classification distinguishes betweeneach of a plurality of types comprising the pointer instrument, thehovering palm, the palm, and the finger, and wherein the type of inputobject is at least one of the plurality of types.
 16. The input deviceof claim 15, wherein the second step is performed only when the secondoutput is the finger.
 17. The input device of claim 15, wherein thefirst subset of the set of measurements further comprises a maximumpixel value of the input object as represented in the capacitive image.18. The input device of claim 15, wherein the second subset of the setof measurements comprises an area of the input object and width.
 19. Theinput device of claim 15, wherein the first step comprises a Bayesiananalysis of area of the input object, and the second step comprises:obtaining a fisher linear discriminant of area and average pixel value,and performing a Bayesian analysis of the fisher linear discriminant.20. The input device of claim 15, wherein the classification resultfurther comprises a confidence level.